package ai.yue.open.service.cd.entity;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.util.List;

/**
 * 工作负载
 *
 * @author yl-yue
 * @since 2023/2/7
 */
@Data
@TableName("workload")
public class Workload {

    private static final long serialVersionUID = 1L;

    /**
     * 有序主键：单表时数据库自增、分布式时雪花自增
     */
    @TableId
    private Long id;

    /**
     * 排序索引
     */
    private Integer sortIdx;

    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    private Long createTime;

    /**
     * 更新时间
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Long updateTime;

    /**
     * 命名空间名
     */
    private String namespace;

    /**
     * 工作负载名
     */
    private String workloadName;

    /**
     * 工作负载API地址：重新部署时使用
     */
    private String workloadApiUrl;

    /**
     * 镜像地址
     */
    private String imageAddr;

    /**
     * 当前部署镜像版本
     */
    private String currentDeployImageTag;

    /**
     * 镜像版本
     */
    @TableField(exist = false)
    private List<String> imageTags;

    /**
     * 是否重新部署
     */
    private Boolean isRedeploy;

    /**
     * 是否通知
     */
    private Boolean isNotify;

}
